package cn.com.cfae.iras.doc.analyze.parse.model;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * 第二章释义
 */
public class SYModel extends BizBaseModel {


    public static final String MODEL_NAME = "SY";

    /**
     * 发行人
     */
    private static final String FXR = "FXR";
    /**
     * 债务融资工具
     */
    private static final String ZWRZGJ = "ZWRZGJ";
    /**
     * 募集说明书
     */
    private static final String MJSMS = "MJSMS";
    /**
     * 主承销商
     */
    private static final String ZCXS = "ZCXS";
    /**
     * 承销团
     */
    private static final String CXT = "CXT";
    /**
     * 承销协议
     */
    private static final String CXXY = "CXXY";
    /**
     * 簿记建档
     */
    private static final String BJJD = "BJJD";
    /**
     * 簿记管理人
     */
    private static final String BJGLR = "BJGLR";
    /**
     * 交易商协会
     */
    private static final String JYSXH = "JYSXH";
    /**
     * 上清所
     */
    private static final String SQS = "SQS";
    /**
     * 北金所
     */
    private static final String BJS = "BJS";
    /**
     * 三年及一期
     */
    private static final String SNJYQ = "SNJYQ";
    /**
     * 工作日
     */
    private static final String GZR = "GZR";

    /**
     * 节假日
     */
    private static final String JJR = "JJR";

    /**
     * 非居民账户
     */
    private static final String FJMZH="FJMZH";

    private static Map<String, String> items = new HashMap<>();

    static {
        items.put(FXR, "发行人|本公司");//企业、公司是否放入，放入会干扰
        items.put(ZWRZGJ, "债务融资工具|债务融资工具|债务融资工具名称|票据名称|融资券名称|本期中期票据|短期融资券");
        items.put(MJSMS, "募集说明书|本募集说明书|定向募集说明书|本定向募集说明书|补充募集说明书");
        items.put(ZCXS, "主承销商|主承销商及簿记管理人|主承|主承销");
        items.put(CXT, "承销团");
        items.put(CXXY, "承销协议|《承销协议》|主承销协议");
        items.put(BJJD, "簿记建档|集中簿记建档");
        items.put(BJGLR, "簿记管理人|主承销商簿记管理人|集中簿记管理人");
        items.put(JYSXH, "交易商协会|协会");
        items.put(SQS, "上清所|上海清算所|银行间市场清算所股份有限公司");
        items.put(BJS, "北金所|集中簿记建档系统技术支持机构|北京金融资产交易所|北京金融资产交易所有限公司");
        items.put(SNJYQ, "三年及一期|近三年又一期|近三年及一期|近三年|近三年一期|三年又一期|3年及一期|3年及1期|三年一期");
        items.put(GZR, "工作日");
        items.put(JJR, "节假日|法定节假日");
        items.put(FJMZH, "非居民账户|NRA账户|NRA 账户|托管账户");
    }

    public static List<ExtractItem> createExtractItemList() {
        List<ExtractItem> extractItemList = new ArrayList<>();
        items.forEach((key, value) -> {
            ExtractItem extractItem = new ExtractItem();
            extractItem.setItemName(key);
            extractItem.setSynonyms(value.split(SYNONYM_SPLIT_CHAR));
            extractItemList.add(extractItem);
        });
        return extractItemList;
    }
}
